/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.sgs.mb;

import br.com.sgs.auxiliar.DepartamentoAux;
import br.com.sgs.bundle.MessageBundleLoader;
import br.com.sgs.entity.Departamento;
import br.com.sgs.fachada.Fachada;
import br.com.sgs.fachada.IFachada;
import java.io.Serializable;
import java.util.Calendar;
import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;

/**
 *
 * @author Eric
 */
@ManagedBean(name="departamentoNewMB")
@ViewScoped
public class DepartamentoNewMB implements Serializable {
   
    @ManagedProperty(value = "#{loginMB}")
    private LoginMB lmb;
    
    //Campos que receberão as informações
    private String descricao;
    private String ramal;
        
        
    /**
     * Creates a new instance of DepartamentoNewMB
     */
    public DepartamentoNewMB() {
    }
    
    @PostConstruct 
    public void init(){
        
    }      

    public String salvar() {     
        try {
            
            Departamento departamento = new Departamento();
            
            departamento.setDescricao(descricao);
            departamento.setRamal(ramal);
            departamento.setDtcriacao(Calendar.getInstance().getTime());
            departamento.setStatus(DepartamentoAux.ATIVO);
            
            IFachada fach = new Fachada();
            fach.inserir(departamento);  
            
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, MessageBundleLoader.getMessage("msgSalvoSucesso"), ""));
          
            return "DEPARTAMENTOLIST";

        } catch (Exception e) {
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, MessageBundleLoader.getMessage("erroNaoEncontrado"), ""));
            return null;
        } 
    }
    
    public void limparCampos() {
        try {
            
            setDescricao("");
            setRamal("");
            
        } catch (Exception e) {
            System.err.println("Erro no limparCampos");
        }
        
    }
    
    public String voltar() {
        try {
            return "DEPARTAMENTOLIST";
        } catch (Exception e) {
            System.err.println("Erro no método voltar");
            return null;
        }
    }

    /**
     * @return the descricao
     */
    public String getDescricao() {
        return descricao;
    }

    /**
     * @param descricao the descricao to set
     */
    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    /**
     * @return the ramal
     */
    public String getRamal() {
        return ramal;
    }

    /**
     * @param ramal the ramal to set
     */
    public void setRamal(String ramal) {
        this.ramal = ramal;
    }

    /**
     * @return the lmb
     */
    public LoginMB getLmb() {
        return lmb;
    }

    /**
     * @param lmb the lmb to set
     */
    public void setLmb(LoginMB lmb) {
        this.lmb = lmb;
    }

 
}
